﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Styx.Helpers;
using System.IO;
using Styx;

using Styx.Common;

namespace Boogman
{
    public class BoogmanSettings : Settings
    {
        public static readonly BoogmanSettings myPrefs = new BoogmanSettings();

        public BoogmanSettings()
            : base(Path.Combine(Utilities.AssemblyDirectory, string.Format(@"Config/Pasterke/Boogman2/{0}-{1}-BoogmanSettings.xml", StyxWoW.Me.RealmName, StyxWoW.Me.Name)))
        {
        }

        [Setting, DefaultValue(0)]
        public int rapidfire { get; set; }

        [Setting, DefaultValue(0)]
        public int bloodfury { get; set; }

        [Setting, DefaultValue(0)]
        public int berserking { get; set; }

        [Setting, DefaultValue(0)]
        public int stampede { get; set; }

        [Setting, DefaultValue(0)]
        public int lifeblood { get; set; }

        [Setting, DefaultValue(0)]
        public int murderofcrows { get; set; }

        [Setting, DefaultValue(0)]
        public int trinket1 { get; set; }

        [Setting, DefaultValue(0)]
        public int trinket2 { get; set; }

        [Setting, DefaultValue(0)]
        public int engigloves { get; set; }

        [Setting, DefaultValue(3)]
        public int startaoe { get; set; }

        [Setting, DefaultValue(5)]
        public int callpetnr { get; set; }

        [Setting, DefaultValue(0)]
        public int misdirection { get; set; }

        [Setting, DefaultValue(0)]
        public int autocallrevivepet { get; set; }

        [Setting, DefaultValue(0)]
        public int virmenpotion { get; set; }

        [Setting, DefaultValue(0)]
        public int agilityflask { get; set; }

        [Setting, DefaultValue(0)]
        public int alchemyflask { get; set; }

        [Setting, DefaultValue(0)]
        public int healthstonepercent { get; set; }

        [Setting, DefaultValue(65)]
        public int mendpetpercent { get; set; }

        [Setting, DefaultValue(65)]
        public int EatDrink { get; set; }

        [Setting, DefaultValue(75)]
        public int UseBandages { get; set; }

        [Setting, DefaultValue(false)]
        public bool DisableTargetting { get; set; }

        [Setting, DefaultValue(false)]
        public bool DisableFacing { get; set; }

        [Setting, DefaultValue(false)]
        public bool DisableMovement { get; set; }


        [Setting, DefaultValue(0)]
        public int PauseKey { get; set; }

        public enum Keypress
        {
            None,
            LSHIFT,
            RSHIFT,
            LCTRL,
            RCTRL,
            LALT,
            RALT
        };

        [Setting, DefaultValue(Keypress.None)]
        public Keypress PauseKeys { get; set; }

        [Setting, DefaultValue(true)]
        public bool PrintMsg { get; set; }
    }
}

